Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Police Robot Family Obsoletion #66872

Merged
merged 24 commits into from
Jul 25, 2023
Merged

Conversation

Karol1223
Copy link
Contributor

@Karol1223 Karol1223 commented Jul 13, 2023

Summary

None

Purpose of change

For a longer while there have been discussions of how our police bots not only no longer fit the setting at all but also work in ways that don't make sense if they did fit in the first place. Granted, the second point alone wouldn't be enough to obsolete them but as it stands they are currently relics of the old setting.

Describe the solution

MONSTERS

  • Obsolete the Eyebot
  • Make sure the monsters that copy from Eyebot aren't immediately broken (Couldn't check all of their functionality but what they previously copied by hand they now have copied into their own JSON. Odds of this somehow breaking are nigh zero)
  • Make sure the Eyebots aren't present in mongroups and mapgen
  • Obsolete the Police Bot
  • Make sure Police Bots aren't present in mongroups and mapgen
  • Obsolete the Riot Bot
  • Make sure Riot Bots aren't present in mongroups and mapgen
  • Make Hub's Camspies deactivate into their own item instead of copying the Eyebot

ITEMS

  • Obsolete the items connected to Eyebots
  • Obsolete the items connected to Police Bots
  • Obsolete the items connected to Riot Bots
  • Add a new inactive item for the Camspy

CPP

  • Obsolete the hardcoded mentions of Eyebots
  • Obsolete the hardcoded mentions of Police Bots
  • Obsolete the hardcoded mentions of Riot Bots
  • Remove code responsible for WANTED and ROBOT_ATTACK events

MOD CONTENT

  • Make sure obsoleting mainline content doesn't break anything
  • Port the robots and their connected items to Aftershock

MISCELLANEOUS

  • Remove some PARROT snippets that feel like they're very much RoboCop - without Eyebots they make no sense for MiGos to use those
  • Remove some flier, newspaper and tip snippets referencing Eyebots
  • Changed the mission dialogue referring to Camspies as "Eyebots with a different coat of paint"
  • Edit the NPC background referencing Eyebots
  • Make the broken item for the Camspy NO_SALVAGE

Describe alternatives you've considered

There's been many discussions of including more variants of camspies or drones, however, the existence of the Eyebot is not necessary (and I'd hazard a guess moving the functions to the Hub camspy is actually gonna make further conversions more comfortable). I opted not to do any of those, though I hope that I can do this PR in such a way where further theoretical implementation of them won't require digging through git blame to find dead code.

Testing

Additional context

The world would be a better place if people threw their dictionary edits through an autosorter so my PRs didn't look like a mosaic whenever I do that

Big thanks to @chichit1044 for doing the backstory as I'd have gone insane trying to make that work myself

@github-actions github-actions bot added [JSON] Changes (can be) made in JSON Mods Issues related to mods or modding Spawn Creatures, items, vehicles, locations appearing on map Mods: Aftershock Anything to do with the Aftershock mod json-styled JSON lint passed, label assigned by github actions astyled astyled PR, label is assigned by github actions labels Jul 13, 2023
@NetSysFire
Copy link
Member

What about the riot bot? The one that shocks you, emits relaxation gas and tries to arrest you

@Karol1223
Copy link
Contributor Author

What about the riot bot? The one that shocks you, emits relaxation gas and tries to arrest you

The current goal list is very much WIP of what I just could think of on top of my head. I know there's AT LEAST three monsters I need to obsolete (Riot Bot was the third one whose name I forgot, unironically thank you for reminding me the name lol), alongside more items, likely some snippets and a plethora of hardcoded bullshit. I'll add most of them to the list as I go around finishing them up or remember specific things I need to note down not to forget.

@github-actions github-actions bot added [C++] Changes (can be) made in C++. Previously named `Code` Map / Mapgen Overmap, Mapgen, Map extras, Map display labels Jul 13, 2023
@SurFlurer
Copy link
Contributor

Current code makes timed_event_type::WANTED do nothing. Just out of curiosity, are you planning to add some other consequences for the player character becoming "wanted", or just remove that event and all related code?

@Karol1223
Copy link
Contributor Author

Current code makes timed_event_type::WANTED do nothing. Just out of curiosity, are you planning to add some other consequences for the player character becoming "wanted", or just remove that event and all related code?

Realistically, I can't think of any possible use cases for it unless we make some NPCs with specific backstories have different responses? I'm likely going to remove it as a whole, though, unless someone steps in and tells me to keep it.

@worm-girl
Copy link
Contributor

I think we should cut the riot turrets too. They just don't make any sense as-implemented and wind up creating loot farms or a hotspot where fifty zombies are trying to smash them but somehow can't do any damage.

@CocoBatPone
Copy link

CocoBatPone commented Jul 14, 2023

I'll very much miss the robots, I've always liked DDA being somewhat futuristics and the robots and such have always been a part of that for me, will these re-appear in a mod like aftershock, or a seperate mod?

I know the PR says they could be moved to Aftershock, but if that never happens I'd like them somewhere else, I'm pretty sad to see a lot of DDA's more futuristic aspects are leaving in general.

@Karol1223
Copy link
Contributor Author

I know the PR says they could be moved to Aftershock, but if that never happens I'd like them somewhere else

I got greenlight from Aftershock maintainers to move them there so I will. This is not an ideal solution for Aftershock but it has a lot of content that requires these robots to exist so for the time being they'll be ported over in their entirety.

@github-actions github-actions bot added the Crafting / Construction / Recipes Includes: Uncrafting / Disassembling label Jul 14, 2023
@NetSysFire
Copy link
Member

Ah so the other bots, mainly the utility ones, already had their description altered and are made by Uncanny now. Though what of the hazmat and mole bot? The former is mainly a relic of the hazardous waste sarcophagus afaik.

@Karol1223
Copy link
Contributor Author

Ah so the other bots, mainly the utility ones, already had their description altered and are made by Uncanny now. Though what of the hazmat and mole bot? The former is mainly a relic of the hazardous waste sarcophagus afaik.

I'm very meh about most of the robots we have but I'm only tackling the police lads this PR. If I tried to do all of them not only would I have to think more but the reviewers would probably avoid this like hellfire.

@github-actions github-actions bot added BasicBuildPassed This PR builds correctly, label assigned by github actions and removed json-styled JSON lint passed, label assigned by github actions labels Jul 15, 2023
@github-actions github-actions bot added json-styled JSON lint passed, label assigned by github actions NPC / Factions NPCs, AI, Speech, Factions, Ownership BasicBuildPassed This PR builds correctly, label assigned by github actions and removed BasicBuildPassed This PR builds correctly, label assigned by github actions labels Jul 16, 2023
@Karol1223 Karol1223 changed the title [WIP] Police Robot Family Obsoletion Police Robot Family Obsoletion Jul 18, 2023
Co-Authored-By: chichit1044 <[email protected]>
@github-actions
Copy link
Contributor

Spell checker encountered unrecognized words in the in-game text added in this pull request. See below for details.

Click to expand
  • 'cuz I know how cops think. If you can call it that. Early days, they were still going after alarms in case it meant, I dunno, survivors. You smack some fucker's sports car, it starts wailing, the cops come to take a look and you can walk right behind 'em. That's the thing about cops; they follow orders, right? Even when the world's comin' apart. I kept my head down until I got past the worst of it, but then, lucky me, I got sergeant braniac. Figured out why someone would trip an alarm on purpose, had them case all up and down the streets for me. I wound up on the edge of town layin' low under an abandoned RV for a few hours. By then… well, they had some other big problems to deal with. For a little bit. Might've survived if they hadn't blown their wads chasing me around the block.
  • It was just chaos on the streets, man. But I'm used to chaos. You don't live as long as I've lived and not know how to keep away from a fight you can't win. Biggest worry wasn't the zombies and the monsters, honestly. But I swear, some cops got a nightstick so far up their ass… I didn't have time to ditch my orange when stuff kept swipin' at me, and I swear, cops got a look at me, they decided I was the big problem. Goddamn walking corpse next to me, who do they pick to shoot at? Pricks.

This alert is automatically generated. You can simply disregard if this is inaccurate, or (optionally) you can also add the new words to tools/spell_checker/dictionary.txt so they will not trigger an alert next time.

@github-actions github-actions bot added the Mechanics: Enchantments / Spells Enchantments and spells label Jul 20, 2023
@github-actions github-actions bot removed the BasicBuildPassed This PR builds correctly, label assigned by github actions label Jul 20, 2023
@github-actions github-actions bot added the BasicBuildPassed This PR builds correctly, label assigned by github actions label Jul 20, 2023
Copy link
Contributor

@bombasticSlacks bombasticSlacks left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The C++ looks reasonable for this, I don't think these are serialized in a way that things can break.

@Karol1223
Copy link
Contributor Author

@Maleclypse pinging you since I'd like a pair of eyes from an Aftershock Maintainers to look through this as well

@Karol1223 Karol1223 marked this pull request as ready for review July 24, 2023 20:12
@Maleclypse Maleclypse merged commit 73489da into CleverRaven:master Jul 25, 2023
@Karol1223 Karol1223 deleted the evil-evil-evil branch July 25, 2023 19:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
astyled astyled PR, label is assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions [C++] Changes (can be) made in C++. Previously named `Code` Crafting / Construction / Recipes Includes: Uncrafting / Disassembling [JSON] Changes (can be) made in JSON json-styled JSON lint passed, label assigned by github actions Map / Mapgen Overmap, Mapgen, Map extras, Map display Mechanics: Enchantments / Spells Enchantments and spells Mods: Aftershock Anything to do with the Aftershock mod Mods Issues related to mods or modding NPC / Factions NPCs, AI, Speech, Factions, Ownership Spawn Creatures, items, vehicles, locations appearing on map
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants